odstraneni diakritiky

Otázka od: Petr Kuklik

27. 8. 2004 10:58

Dobry den,
  potreboval bych z libovolneho textu (zdrojem muze byt RichEdit, TMimeMess ze
synapse) odstranit diakritiku. Nevite nekdo o nejake funkci ci komponente,
ktera by to umela?


Diky Petr


Odpovedá: Fedor 'fi0dor' Tirsel

27. 8. 2004 11:04

: Dobry den,

Zdravim,

: potreboval bych z libovolneho textu (zdrojem muze byt RichEdit, TMimeMess ze
: synapse) odstranit diakritiku. Nevite nekdo o nejake funkci ci komponente,
ktera
: by to umela?

ja mam na to takuto funkciu:

//prekonvertuje diakritiku do asci
function slovakToAscii(InStr: string): string;
var i :longint;
    kde :smallInt;

const SlovakStr = 'allroacdeeinorstuuuuyzACLLRDAEEINUOORSTUUUYZ';
      AsciiStr = 'allroacdeeinorstuuuuyzACLLRDAEEINUOORSTUUUYZ';

begin
  result := InStr;

  for i := 1 to length(InStr) do
   begin
     kde := pos(InStr[i], SlovakStr);
     if kde > 0 then result[i] := AsciiStr[kde];
   end;
end;

S pozdravom...
--
Fedor 'fi0dor' Tirsel
www.fi0dor.info


Odpovedá: Lukas Gebauer

27. 8. 2004 12:08

> potreboval bych z libovolneho textu (zdrojem muze byt RichEdit,
> TMimeMess ze synapse) odstranit diakritiku. Nevite nekdo o nejake
> funkci ci komponente, ktera by to umela?

A proc na to nepouzijes Synapsi, kdyz uz ji pouzivas?  

s := CharsetConversionEx(s, GetCurCP, GetCurCP, Replace_Czech);



--
Lukas Gebauer.

E-mail: gebauerl@mlp.cz
http://www.ararat.cz/synapse/ - Ararat Synapse - TCP/IP Lib.